Quantifying the interpretation overhead of Python

نویسندگان

چکیده

While Python has become increasingly popular for its convenience, it is also criticized suboptimal performance. To figure out what burdens the interpreter of and provide insights into possible optimizations, we conduct this empirical study on CPython's performance via sampling-based profiling. This approach incurs a low runtime overhead does not require any modification application code, thus providing convincing experimental results. Specifically, use 48 benchmarks from pyperformance project to analyze interpreter. We compare usage different opcodes decompose at various granularities (e.g., files, functions, statements). It turns that most parts contribute small portion overhead, promising improvements lie in minority, such as name access reference counting functions. Furthermore, pay attention four specific performance-affecting issues: access, dynamic typing, garbage collection, opcode dispatch. The issue reveals several optimization techniques, register-based virtual machine architecture tracing-based well few fruitless points, operator overloading

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Stimfit: quantifying electrophysiological data with Python

Intracellular electrophysiological recordings provide crucial insights into elementary neuronal signals such as action potentials and synaptic currents. Analyzing and interpreting these signals is essential for a quantitative understanding of neuronal information processing, and requires both fast data visualization and ready access to complex analysis routines. To achieve this goal, we have de...

متن کامل

Alternative for Quantifying Field-Overhead Damages

The context of delays significantly affects delay responsibility. Among other things, recoverable damages for a delay should be related to the timing of the corresponding delay and its effect on indirect costs. This paper presents an alternative and integrated approach for quantifying and apportioning delay responsibility. It considers the context of a delay in terms of its timing and the degre...

متن کامل

Quantifying and Evaluating the Space Overhead in C++ Memory Layouts

This paper develops a formalism that precisely characterizes when class tables are required for C++ memory layouts. A memory layout is a particular choice of data structures for implementing run-time support for object-oriented languages. We use this formalism and other techniques to quantify and evaluate, on a set of benchmarks, the space overhead for a set of C++ memory layouts. In particular...

متن کامل

Function call overhead benchmarks with MATLAB, Octave, Python, Cython and C

where Ω ⊆ Rd is a d-dimensional domain with boundary ∂Ω and a, c, f : Ω → R, b : Ω→ Rd and g : ∂Ω→ R are given functions with special properties that will not be discussed here. In FEM a domain is discretized into a mesh by splitting the domain into “simple” geometric shapes (intervals, triangles, tetrahedrons, . . . ). Along with special functions (usually piecewise polynomials) these shapes a...

متن کامل

the effect of taftan pozzolan on the compressive strength of concrete in the environmental conditions of oman sea (chabahar port)

cement is an essential ingredient in the concrete buildings. for production of cement considerable amount of fossil fuel and electrical energy is consumed. on the other hand for generating one tone of portland cement, nearly one ton of carbon dioxide is released. it shows that 7 percent of the total released carbon dioxide in the world relates to the cement industry. considering ecological issu...

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Science of Computer Programming

سال: 2022

ISSN: ['1872-7964', '0167-6423']

DOI: https://doi.org/10.1016/j.scico.2021.102759